home *** CD-ROM | disk | FTP | other *** search
/ C++ für Kids / C++ for kids.iso / Buch / Zins1a.cpp < prev    next >
C/C++ Source or Header  |  1999-01-09  |  3KB  |  105 lines

  1. //---------------------------------------------------------------------------
  2. #include <vcl\vcl.h>
  3. #pragma hdrstop
  4.  
  5. #include "Zins1a.h"
  6. //---------------------------------------------------------------------------
  7. #pragma resource "*.dfm"
  8.  
  9. TForm1 *Form1;
  10.  
  11. //---------------------------------------------------------------------------
  12. __fastcall TZins::TZins (void) : TObject ()
  13. {
  14. }
  15. //---------------------------------------------------------------------------
  16. void __fastcall TZins::SetKapital (String Text)
  17. {
  18.   try {Kapital = StrToFloat (Text);}
  19.   catch (...){Kapital = 0;}
  20. }
  21. //---------------------------------------------------------------------------
  22. void __fastcall TZins::SetProzent (String Text)
  23. {
  24.   try {Prozent = StrToFloat (Text);}
  25.   catch (...){Prozent = 0;}
  26. }
  27. //---------------------------------------------------------------------------
  28. void __fastcall TZins::SetZinsen (String Text)
  29. {
  30.   try {Zinsen = StrToFloat (Text);}
  31.   catch (...){Zinsen = 0;}
  32. }
  33. //---------------------------------------------------------------------------
  34. String __fastcall TZins::CalcKapital (void)
  35. {
  36.   Kapital = Zinsen * 100 / Prozent;
  37.   return (String(FloatToStrF(Kapital,ffNumber,8,2)));
  38. }
  39. //---------------------------------------------------------------------------
  40. String __fastcall TZins::CalcProzent (void)
  41. {
  42.   Prozent = Zinsen * 100 / Kapital;
  43.   return (String(FloatToStrF(Prozent,ffNumber,8,2)));
  44. }
  45. //---------------------------------------------------------------------------
  46. String __fastcall TZins::CalcZinsen (void)
  47. {
  48.   Zinsen = Kapital * Prozent / 100;
  49.   return (String(FloatToStrF(Zinsen,ffNumber,8,2)));
  50. }
  51. //---------------------------------------------------------------------------
  52. __fastcall TForm1::TForm1(TComponent* Owner)
  53.     : TForm(Owner)
  54. {
  55. }
  56. //---------------------------------------------------------------------------
  57. void __fastcall TForm1::SetZero (void)
  58. {
  59.   Zins1->Kapital = 0;
  60.   Zins1->Prozent = 0;
  61.   Zins1->Zinsen  = 0;
  62.   Edit1->Text = "0";
  63.   Edit2->Text = "0";
  64.   Edit3->Text = "0";
  65.   Modus = 0;
  66. }
  67. //---------------------------------------------------------------------------
  68. void __fastcall TForm1::FormCreate(TObject *Sender)
  69. {
  70.   Zins1 = new TZins ();
  71.   SetZero ();
  72. }
  73. //---------------------------------------------------------------------------
  74. void __fastcall TForm1::Button1Click(TObject *Sender)
  75. {
  76.   SetZero ();
  77.   Label1->Caption = "Gib fⁿr die gesuchte Gr÷▀e eine Null ein!";
  78. }
  79. //---------------------------------------------------------------------------
  80. void __fastcall TForm1::Button2Click(TObject *Sender)
  81. {
  82.   Zins1->SetKapital (Edit1->Text);
  83.   if (Edit1->Text == "0") Modus++;
  84.   Zins1->SetProzent (Edit2->Text);
  85.   if (Edit2->Text == "0") Modus+=10;
  86.   Zins1->SetZinsen  (Edit3->Text);
  87.   if (Edit3->Text == "0") Modus+=100;
  88.   switch (Modus)
  89.   {
  90.     case 1:
  91.       Edit1->Text = Zins1->CalcKapital();
  92.       break;
  93.     case 10:
  94.       Edit2->Text = Zins1->CalcProzent ();
  95.       break;
  96.     case 100:
  97.       Edit3->Text = Zins1->CalcZinsen ();
  98.       break;
  99.     default:
  100.       Label1->Caption = "Das sind zu viele Nullen!";
  101.   }
  102.   Modus = 0;
  103. }
  104. //---------------------------------------------------------------------------
  105.